package com.jhws.core.dataUpdate.Dao;

/**
 * 数据更新推拉服务的时间戳操作Dao
 */
public interface IDataUpdateDao {

    /**
     * 获取某个标签下某个模块的上次更新时间戳
     * @param label
     * @param module
     * @return
     */
    String getTimeStamp(String label,String module);

    /**
     * 设置某个标签下某个模块的数据更新时间戳,标签是否为账号,处理模式略有不同
     * @param label
     * @param module
     * @param timeStamp
     * @param isAccount  该标签是否是账号
     */
    void setTimeStamp(String label,String module, String timeStamp,boolean isAccount);

    /**
     * 获取用户上次读取该标签下此模块的时间戳
     * @param username
     * @param label
     * @param module
     * @return
     */
    String getUserReadTimeStamp(String username,String label,String module);

    /**
     * 设置用户这次读取某个标签下模块的时间戳
     * @param username
     * @param label
     * @param module
     * @param timeStamp
     */
    void setUserReadTimeStamp(String username,String label,String module,String timeStamp);

    /**
     * 移除用户的某个模块的数据更新时间戳
     * @param username
     * @param module
     */
    void removeUserTimeStamp(String username,String module);
}
